﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DataObjects.Interface.Admin;
using DataObjects.Interface.HumanResources;
using DataObjects.Interface.Person;
using DataObjects.Interface.Production;
using DataObjects.Interface.Sales;
using DataObjects.Interface;
using DataObjects.SqlServer.Admin;
using DataObjects.SqlServer.HumanResources;
using DataObjects.SqlServer.Person;
using DataObjects.SqlServer.Production;
using DataObjects.SqlServer.Sales;
using DataObjects.SqlServer;

namespace DataObjects.AdoNet.SqlServer
{
    public class SqlServerDaoFactory : IDaoFactory
    {
        public IAudittingLogDao AudittingLogDao { get { return new SqlServerAudittingLogDao(); } }

        public IAutoIdDao AutoIDDao { get { return new SqlServerAutoIdDao(); } }

        public IDBOptionDao DBOptionDao { get { return new SqlServerDBOptionDao(); } }

        public IDecentralizationDao DecentralizationDao { get { return new SqlServerDecentralizationDao(); } }

        public IUserGroupDao UserGroupsDao { get { return new SqlServerUserGroupDao(); } }

        public IUserDao UsersDao { get { return new SqlServerUsersDao(); } }

        public IDepartmentDao DepartmentDao { get { return new SqlServerDepartmentDao(); } }

        public IJobCandidateDao JobCandidateDao { get { return new SqlServerJobCandidateDao(); } }

        public ISalarySheetDao SalarySheetDao { get { return new SqlServerSalarySheetDao(); } }

        public ISalarySheetDetailDao SalarySheetDetailDao { get { return new SqlServerSalarySheetDetailDao(); } }

        public ITimeSheetDao TimeSheetDao { get { return new SqlServerTimeSheetDao(); } }

        public ITimeSheetDetailDao TimeSheetDetailDao { get { return new SqlServerTimeSheetDetailDao(); } }

        public ITimeSheetSignDao TimeSheetSignDao { get { return new SqlServerTimeSheetSignDao(); } }

        public IAccountingObjectDao AccountingObjectDao { get { return new SqlServerAccountingObjectDao(); } }

        public IAccountingObjectCategoryDao AccountingObjectCategoryDao { get { return new SqlServerAccountingObjectCategoryDao(); } }

        public ICountryRegionDao CountryRegionDao { get { return new SqlServerCountryRegionDao(); } }

        public IDistrictDao DistrictsDao { get { return new SqlServerDistrictsDao(); } }

        public IProvincesDao ProvincesDao { get { return new SqlServerProvincesDao(); } }

        public IWorkerShiftDao WorkerShiftDao { get { return new SqlServerWorkerShiftDao(); } }

        public IWorkerShiftForEmployeesDao WorkerShiftForEmployeesDao { get { return new SqlServerWorkerShiftForEmployeesDao(); } }

        public ICurrencyDao CurrencyDao { get { return new SqlServerCurrencyDao(); } }

        public ICurrencyRateDao CurrencyRateDao { get { return new SqlServerCurrencyRateDao(); } }

        public IInventoryItemDao InventoryItemDao { get { return new SqlServerInventoryItemDao(); } }

        public IInventoryItemCategoryDao InventoryItemCategoryDao { get { return new SqlServerInventoryItemCategoryDao(); } }

        public IInventoryLedgerDao InventoryLedgerDao { get { return new SqlServerInventoryLedgerDao(); } }

        public IInwardOutwardDao InwardOutwardDao { get { return new SqlServerInwardOutwardDao(); } }

        public IInwardOutwardDetailDao InwardOutwardDetailDao { get { return new SqlServerInwardOutwardDetailDao(); } }

        public IShipMethodDao ShipMethodDao { get { return new SqlServerShipMethodDao(); } }

        public IStockDao StockDao { get { return new SqlServerStockDao(); } }

        public ITransferDao TransferDao { get { return new SqlServerTransferDao(); } }

        public ITransferDetailDao TransferDetailDao { get { return new SqlServerTransferDetailDao (); } }

        public IUnitsDao UnitsDao { get { return new SqlServerUnitsDao(); } }

        public IGeneralLedgerDao GeneralLedgerDao { get { return new SqlServerGeneralLedgerDao(); } }

        public IInvoiceDao InvoiceDao { get { return new SqlServerInvoiceDao(); } }

        public IInvoiceDetailDao InvoiceDetailDao { get { return new SqlServerInvoiceDetailDao(); } }

        public IPaymentDao PaymentDao { get { return new SqlServerPaymentDao(); } }

        public IPaymentDetailDao PaymentDetailDao { get { return new SqlServerPaymentDetailDao(); } }

        public IReceiptDao ReceiptDao { get { return new SqlServerReceiptDao(); } }

        public IReceiptDetailDao ReceiptDetailDao { get { return new SqlServerReceiptDetailDao(); } }

        public IRestaurantAreaDao RestaurantArea { get { return new SqlServerRestaurantAreaDao(); } }

        public IRestaurantMenuDao RestaurantMenuDao { get { return new SqlServerRestaurantMenuDao(); } }

        public IRestaurantMenuCategoryDao RestaurantMenuCategoryDao { get { return new SqlServerRestaurantMenuCategoryDao(); } }

        public IRestaurantMenuNormDao RestaurantMenuNormDao { get { return new SqlServerRestaurantMenuNormDao(); } }

        public IRestaurantDao RestaurantsDao { get { return new SqlServerRestaurantsDao(); } }

        public IRestaurantTableDao RestaurantTableDao { get { return new SqlServerRestaurantTableDao(); } }

        public IRestaurantMenuNormDetailDao RestaurantMenuNormDetailDao { get { return new SqlServerRestaurantMenuNormDetailDao(); } }
    }
}